package Vista;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.HashMap;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.WindowConstants;




/**
* This code was edited or generated using CloudGarden's Jigloo
* SWT/Swing GUI Builder, which is free for non-commercial
* use. If Jigloo is being used commercially (ie, by a corporation,
* company or business for any purpose whatever) then you
* should purchase a license for each developer using Jigloo.
* Please visit www.cloudgarden.com for details.
* Use of Jigloo implies acceptance of these licensing terms.
* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED
* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.
*/
public class MenuPpalGUI extends JFrame {

	private static final long serialVersionUID = 1L;
	HashMap estrategias = new HashMap();
	private JMenuBar menuBar;	
	private JMenuItem eliminarRodamiento;
	private JMenuItem modificarRodamiento;
	private JMenuItem altaRodamiendo;
	private JMenuItem modificarGananciaitem;
	private JMenu rodamientoItem;
	private JMenu configuracionItem;
	private JMenuItem salirMenuItem;
	private JMenu salirMenu;
	private JMenu configurarMenu;
	private JMenuItem jMenuAltaListaPrecios;
	private JMenuItem jMenuItemGanancia;
	private JMenuItem jMenuItemPolitica;
	private JMenu jMenuConfiguracion;
	private JMenuItem bajaProveedorMenuItem1;
	private JMenuItem modificarProveedorMenuItem;
	private JMenu productosMenu;
	private JMenuItem altaProveedoresMenuItem;
	private JMenu RodamientosMenuItem;	

	
	
	
	private static MenuPpalGUI ppal;

	private MenuPpalGUI() {
		super("AD - TPO");		
		addWindowListener(new WindowHandler());
		initGUI();		
	}


	public static void main(String[] args) {
		getInstance().setVisible(true);
	}
	
	
	public class WindowHandler extends WindowAdapter {
		public void windowClosing(WindowEvent e) {
		  System.exit(0);
	  	}
	 }
	
	public static MenuPpalGUI getInstance(){
		
		if(ppal == null){
			ppal = new MenuPpalGUI();
		}
		return ppal;
	}
	
	private void initGUI() {
		try {
			setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
			getContentPane().setLayout(null);
			{
				menuBar = new JMenuBar();
				setJMenuBar(menuBar);
				menuBar.setPreferredSize(new java.awt.Dimension(576, 44));
				{
					salirMenu = new JMenu();
					menuBar.add(salirMenu);
					menuBar.add(getRodamientoItem());
					menuBar.add(getJMenuConfiguracion());
					//menuBar.add(getConfiguracionItem());
					salirMenu.setText("Archivo");
					salirMenu.setPreferredSize(new java.awt.Dimension(60, 40));
					{
						salirMenuItem = new JMenuItem();
						salirMenu.add(salirMenuItem);
						salirMenuItem.setText("Salir");
						salirMenuItem.addActionListener(new ActionListener() {
							public void actionPerformed(ActionEvent evt) {								
								System.exit(0);																
							}
						});
					}
					salirMenu.addActionListener(new ActionListener() {
						public void actionPerformed(ActionEvent evt) {
														
							System.exit(0);						
							
						}
					});
				}
				{
					RodamientosMenuItem = new JMenu();
					menuBar.add(RodamientosMenuItem);
					RodamientosMenuItem.setText("Proveedores");
					RodamientosMenuItem.setPreferredSize(new java.awt.Dimension(84, 42));
					{
						altaProveedoresMenuItem = new JMenuItem();
						RodamientosMenuItem.add(altaProveedoresMenuItem);
						altaProveedoresMenuItem.setText("Alta Proveedor");
						altaProveedoresMenuItem
						.addActionListener(new ActionListener() {
							public void actionPerformed(ActionEvent evt) {
								//TODO add your code for altaProveedoresMenuItem.actionPerformed
								
								AltaProveedorGUI.getInstance().setVisible(true);
								
							}
						});
					}
					{
						modificarProveedorMenuItem = new JMenuItem();
						RodamientosMenuItem.add(modificarProveedorMenuItem);
						modificarProveedorMenuItem
						.setText("Modificar Proveedor");
						modificarProveedorMenuItem
						.addActionListener(new ActionListener() {
							public void actionPerformed(ActionEvent evt) {
								//TODO add your code for modificarProveedorMenuItem.actionPerformed
								
								ModificacionProveedorGUI.getInstance().setVisible(true);
							}
						});
					}
					{
						bajaProveedorMenuItem1 = new JMenuItem();
						RodamientosMenuItem.add(bajaProveedorMenuItem1);
						RodamientosMenuItem.add(getJMenuAltaListaPrecios());
						bajaProveedorMenuItem1.setText("Eliminar Proveedor");
						bajaProveedorMenuItem1
						.addActionListener(new ActionListener() {
							public void actionPerformed(ActionEvent evt) {
								//TODO add your code for bajaProveedorMenuItem1.actionPerformed
								
								BajaProveedorGUI.getInstance().setVisible(true);
							}
						});
					}
				}
							}
			pack();
			this.setSize(584, 314);
		} catch (Exception e) {
			e.printStackTrace();
		}

	}
	

	
	private JMenuItem getAltaRodamiendo() {
		if(altaRodamiendo == null) {
			altaRodamiendo = new JMenuItem();
			altaRodamiendo.setText("Alta Rodamiento");
			altaRodamiendo.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent evt) {
					AltaRodamientoGUI.getInstance().setVisible(true);

					
				}
			});
		}
		return altaRodamiendo;
	}
	
	private JMenuItem getModificarRodamiento() {
		if(modificarRodamiento == null) {
			modificarRodamiento = new JMenuItem();
			modificarRodamiento.setText("Modificar Rodamiento");
			modificarRodamiento.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent evt) {
					ModificacionRodamientoGUI.getInstance().setVisible(true);
				}
			});
		}
		return modificarRodamiento;
	}
	
	private JMenuItem getEliminarRodamiento() {
		if(eliminarRodamiento == null) {
			eliminarRodamiento = new JMenuItem();
			eliminarRodamiento.setText("Eliminar Rodamiento");
			eliminarRodamiento.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent evt) {
					BajaRodamientoGUI.getInstance().setVisible(true);
				}
			});
		}
		return eliminarRodamiento;
	}

//	private JMenu getConfiguracionItem() {
//		if(configuracionItem == null) {
//			configuracionItem = new JMenu();
//			configuracionItem.setText("Configuracion");
//			configuracionItem.add(getAltaRodamiendo());
//		
//		}
//		return rodamientoItem;
//	}
	private JMenu getRodamientoItem() {
		if(rodamientoItem == null) {
			rodamientoItem = new JMenu();
			rodamientoItem.setText("Rodamientos");
			rodamientoItem.add(getAltaRodamiendo());
			rodamientoItem.add(getModificarRodamiento());
			rodamientoItem.add(getEliminarRodamiento());
		}
		return rodamientoItem;
	}	
	private JMenuItem getModificarGanancia() {
		if(modificarGananciaitem == null) {
			modificarGananciaitem = new JMenuItem();
			modificarGananciaitem.setText("Definir Ganancia");
			modificarGananciaitem.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent evt) {
					ModificarGanaciaGUI.getInstance();

					
				}
			});
		}
		return modificarGananciaitem;
	}
	
	private JMenu getJMenuConfiguracion() {
		
		
		if(jMenuConfiguracion == null) {
			jMenuConfiguracion = new JMenu();
			jMenuConfiguracion.setText("Configuracion");
			jMenuConfiguracion.add(getJMenuItemGanancia());
		}
		return jMenuConfiguracion;
	}
	
	private JMenuItem getJMenuItemGanancia() {
		if(jMenuItemGanancia == null) {
			jMenuItemGanancia = new JMenuItem();
			jMenuItemGanancia.setText("Definir Ganancia");
			jMenuItemGanancia.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent evt) {
					ModificarGanaciaGUI.getInstance();
					
					//TODO add your code for jMenuItemGanancia.actionPerformed
				}
			});
		}
		return jMenuItemGanancia;
	}
	
	
	public JMenuItem getJMenuAltaListaPrecios() {
		if(jMenuAltaListaPrecios == null) {
			jMenuAltaListaPrecios = new JMenuItem();
			jMenuAltaListaPrecios.setText("Alta Lista Precios");
		}
		return jMenuAltaListaPrecios;
	}

}